[INFO] cloning repository https://github.com/YmClash/pyrust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/YmClash/pyrust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYmClash%2Fpyrust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYmClash%2Fpyrust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ff6ef44c1274a0fffe93aaac4d20cdaa0b690e6c
[INFO] fixing YmClash/pyrust against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYmClash%2Fpyrust" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/YmClash/pyrust
[INFO] removed 0 missing tests
[INFO] finished tweaking git repo https://github.com/YmClash/pyrust
[INFO] tweaked toml for git repo https://github.com/YmClash/pyrust written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/YmClash/pyrust on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/YmClash/pyrust already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] bb49f1181e83f884fcef52e4ed0543bfe84acc4878834df0f53cfcb2f88854ba
[INFO] running `Command { std: "docker" "start" "bb49f1181e83f884fcef52e4ed0543bfe84acc4878834df0f53cfcb2f88854ba", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "bb49f1181e83f884fcef52e4ed0543bfe84acc4878834df0f53cfcb2f88854ba" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bb49f1181e83f884fcef52e4ed0543bfe84acc4878834df0f53cfcb2f88854ba", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "bb49f1181e83f884fcef52e4ed0543bfe84acc4878834df0f53cfcb2f88854ba" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling serde v1.0.217
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking regex-syntax v0.8.6
[INFO] [stderr]     Checking bitflags v2.9.4
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking log v0.4.25
[INFO] [stderr]     Checking csv-core v0.1.11
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking endian-type v0.1.2
[INFO] [stderr]     Checking anstyle-query v1.1.4
[INFO] [stderr]     Checking anstyle-parse v0.2.7
[INFO] [stderr]     Checking colorchoice v1.0.4
[INFO] [stderr]     Checking itoa v1.0.14
[INFO] [stderr]     Checking iana-time-zone v0.1.61
[INFO] [stderr]     Checking anstyle v1.0.11
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.1
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking ordered-float v3.9.2
[INFO] [stderr]     Checking home v0.5.11
[INFO] [stderr]     Checking jiff v0.2.15
[INFO] [stderr]     Checking nibble_vec v0.1.0
[INFO] [stderr]     Checking chrono v0.4.39
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking colored v3.0.0
[INFO] [stderr]     Checking radix_trie v0.2.1
[INFO] [stderr]     Checking anstream v0.6.20
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]     Checking cipher v0.3.0
[INFO] [stderr]     Checking chacha20 v0.8.2
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]     Checking regex-automata v0.4.10
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking fd-lock v4.0.4
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling float-derive-macros v0.1.0
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]     Checking csv v1.3.1
[INFO] [stderr]     Checking float-derive v0.1.0
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking regex v1.11.2
[INFO] [stderr]     Checking env_filter v0.1.3
[INFO] [stderr]     Checking rustyline v17.0.2
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking env_logger v0.11.8
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking ymcrust v0.1.0 (https://github.com/Ymclash/ymcrust.git#aca668ff)
[INFO] [stderr]     Checking punk v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/semantic/error_recovery.rs:164:46
[INFO] [stdout]     |
[INFO] [stdout] 164 |                         name: format!("T{}", TYPE_VAR_COUNTER),
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `--force-warn static-mut-refs` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/semantic/error_recovery.rs:262:38
[INFO] [stdout]     |
[INFO] [stdout] 262 |                 name: format!("T{}", TYPE_VAR_COUNTER_2),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/semantic/error_recovery.rs:164:46
[INFO] [stdout]     |
[INFO] [stdout] 164 |                         name: format!("T{}", TYPE_VAR_COUNTER),
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `--force-warn static-mut-refs` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating src/main.rs from 2021 edition to 2024
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/semantic/error_recovery.rs:262:38
[INFO] [stdout]     |
[INFO] [stdout] 262 |                 name: format!("T{}", TYPE_VAR_COUNTER_2),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating tests/dual_mode_simple_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/semantic_lifetime_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/semantic_extended_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/semantic_borrow_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/lex_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/parser_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/dual_mode_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/lex_indentation_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/semantic_cfg_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/parser_test1.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/semantic_optimization_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/semantic_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/dual_mode_robustness_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/test_unified_blocks.rs from 2021 edition to 2024
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 25.28s
[INFO] [stderr] crater-edition-check: punk v0.1.0 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking punk v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `ExpectIdentifier` and `UnexpectedEOF`
[INFO] [stdout]  --> src/parser/parser.rs:7:53
[INFO] [stdout]   |
[INFO] [stdout] 7 | ...rror::ParserErrorType::{ ExpectIdentifier, ExpectedTypeAnnotation,  InvalidTypeAnnotation,  UnexpectedEOF, UnexpectedEndOfInput,  ...
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^^^                                                   ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FunctionDeclaration`
[INFO] [stdout]  --> src/parser/inference.rs:2:38
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::parser::ast::{Expression, FunctionDeclaration, Literal, Operator, Type, VariableDeclaration, BinaryOperation, UnaryOperati...
[INFO] [stdout]   |                                      ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParserErrorType`
[INFO] [stdout]  --> src/parser/declarations/variables.rs:9:48
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::parser_error::{ParserError, ParserErrorType};
[INFO] [stdout]   |                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Parameter`
[INFO] [stdout]  --> src/parser/declarations/functions.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 |     Visibility, Type, Parameter
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParserErrorType`
[INFO] [stdout]  --> src/parser/declarations/functions.rs:9:48
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::parser_error::{ParserError, ParserErrorType};
[INFO] [stdout]   |                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Type`
[INFO] [stdout]  --> src/parser/declarations/structs.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 |     Visibility, Type
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Operators`
[INFO] [stdout]   --> src/parser/declarations/structs.rs:10:51
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::tok::{TokenType, Keywords, Delimiters, Operators};
[INFO] [stdout]    |                                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Mutability` and `Type`
[INFO] [stdout]  --> src/parser/declarations/classes.rs:6:48
[INFO] [stdout]   |
[INFO] [stdout] 6 |     Attribute, MethodeDeclaration, Visibility, Mutability, Type
[INFO] [stdout]   |                                                ^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Operators`
[INFO] [stdout]   --> src/parser/declarations/classes.rs:10:51
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::tok::{TokenType, Keywords, Delimiters, Operators};
[INFO] [stdout]    |                                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AssociatedType` and `Type`
[INFO] [stdout]  --> src/parser/declarations/traits.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     AssociatedType, WhereClause, Visibility, Type
[INFO] [stdout]   |     ^^^^^^^^^^^^^^                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GenericParameter`, `Parameter`, and `WhereClause`
[INFO] [stdout]  --> src/parser/declarations/impl_blocks.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 |     Visibility, Type, GenericParameter, WhereClause, Parameter
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::variables::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use self::variables::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::functions::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use self::functions::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::structs::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use self::structs::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::classes::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub use self::classes::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::traits::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub use self::traits::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::enums::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub use self::enums::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::impl_blocks::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub use self::impl_blocks::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Delimiters`
[INFO] [stdout]    --> src/parser/utils.rs:165:32
[INFO] [stdout]     |
[INFO] [stdout] 165 |     use crate::tok::{Keywords, Delimiters};
[INFO] [stdout]     |                                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ScopeKind`
[INFO] [stdout]    --> src/semantic/borrow_checker.rs:765:48
[INFO] [stdout]     |
[INFO] [stdout] 765 |     use crate::semantic::symbols::{SymbolKind, ScopeKind};
[INFO] [stdout]     |                                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `marker::Sized`
[INFO] [stdout]  --> src/semantic/types/type_system.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::{fmt,marker::Sized};
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet` and `VecDeque`
[INFO] [stdout]  --> src/semantic/types/inference.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::{HashMap, HashSet, VecDeque};
[INFO] [stdout]   |                                 ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ASTNode`, `Declaration`, `Expression`, and `Statement`
[INFO] [stdout]  --> src/semantic/types/inference.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::ast::{Expression, Statement, Declaration, ASTNode};
[INFO] [stdout]   |                          ^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ASTNode`, `Declaration`, and `Statement`
[INFO] [stdout]  --> src/semantic/lifetimes/inference.rs:6:38
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::ast::{Expression, Statement, Declaration, ASTNode};
[INFO] [stdout]   |                                      ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TypeId` and `TypeKind`
[INFO] [stdout]   --> src/semantic/lifetimes/inference.rs:10:43
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::semantic::types::type_system::{TypeId, TypeKind};
[INFO] [stdout]    |                                           ^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ASTNode`, `Declaration`, `Expression`, and `Statement`
[INFO] [stdout]  --> src/semantic/ssa/ssa_form.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::ast::{Expression, Statement, Declaration, ASTNode};
[INFO] [stdout]   |                          ^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BasicBlock`
[INFO] [stdout]  --> src/semantic/ssa/ssa_form.rs:9:56
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::semantic::flow::{ControlFlowGraph, BlockId, BasicBlock};
[INFO] [stdout]   |                                                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ASTNode`
[INFO] [stdout]   --> src/semantic/error_recovery.rs:10:62
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::parser::ast::{Expression, Statement, Declaration, ASTNode};
[INFO] [stdout]    |                                                              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::semantic::types::type_system::TypeId`
[INFO] [stdout]  --> src/semantic/optimizations/constant_folding.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::semantic::types::type_system::TypeId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_bigint::BigInt`
[INFO] [stdout]    --> src/semantic/optimizations/constant_folding.rs:329:25
[INFO] [stdout]     |
[INFO] [stdout] 329 |                     use num_bigint::BigInt;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_bigint::BigInt`
[INFO] [stdout]    --> src/semantic/optimizations/constant_folding.rs:435:13
[INFO] [stdout]     |
[INFO] [stdout] 435 |         use num_bigint::BigInt;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToPrimitive`
[INFO] [stdout]    --> src/semantic/optimizations/constant_folding.rs:436:26
[INFO] [stdout]     |
[INFO] [stdout] 436 |         use num_traits::{ToPrimitive, Zero};
[INFO] [stdout]     |                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/semantic/optimizations/dead_code_elimination.rs:5:33
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BreakStatement`, `ContinueStatement`, and `ReturnStatement`
[INFO] [stdout]  --> src/semantic/optimizations/dead_code_elimination.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 |                          ReturnStatement, BreakStatement, ContinueStatement};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::semantic::symbols::SymbolId`
[INFO] [stdout]   --> src/semantic/optimizations/dead_code_elimination.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::semantic::symbols::SymbolId;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::semantic::symbols::SymbolId`
[INFO] [stdout]  --> src/semantic/optimizations/alias_analysis.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::semantic::symbols::SymbolId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/interpreter/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ExpectIdentifier` and `UnexpectedEOF`
[INFO] [stdout]  --> src/parser/parser.rs:7:53
[INFO] [stdout]   |
[INFO] [stdout] 7 | ...rror::ParserErrorType::{ ExpectIdentifier, ExpectedTypeAnnotation,  InvalidTypeAnnotation,  UnexpectedEOF, UnexpectedEndOfInput,  ...
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^^^                                                   ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FunctionDeclaration`
[INFO] [stdout]  --> src/parser/inference.rs:2:38
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::parser::ast::{Expression, FunctionDeclaration, Literal, Operator, Type, VariableDeclaration, BinaryOperation, UnaryOperati...
[INFO] [stdout]   |                                      ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutability`
[INFO] [stdout]  --> src/parser/declarations/variables.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 |     Visibility, Mutability, Type
[INFO] [stdout]   |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParserErrorType`
[INFO] [stdout]  --> src/parser/declarations/variables.rs:9:48
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::parser_error::{ParserError, ParserErrorType};
[INFO] [stdout]   |                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Parameter`
[INFO] [stdout]  --> src/parser/declarations/functions.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 |     Visibility, Type, Parameter
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParserErrorType`
[INFO] [stdout]  --> src/parser/declarations/functions.rs:9:48
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::parser_error::{ParserError, ParserErrorType};
[INFO] [stdout]   |                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Type`
[INFO] [stdout]  --> src/parser/declarations/structs.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 |     Visibility, Type
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Operators`
[INFO] [stdout]   --> src/parser/declarations/structs.rs:10:51
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::tok::{TokenType, Keywords, Delimiters, Operators};
[INFO] [stdout]    |                                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Mutability` and `Type`
[INFO] [stdout]  --> src/parser/declarations/classes.rs:6:48
[INFO] [stdout]   |
[INFO] [stdout] 6 |     Attribute, MethodeDeclaration, Visibility, Mutability, Type
[INFO] [stdout]   |                                                ^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Operators`
[INFO] [stdout]   --> src/parser/declarations/classes.rs:10:51
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::tok::{TokenType, Keywords, Delimiters, Operators};
[INFO] [stdout]    |                                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AssociatedType` and `Type`
[INFO] [stdout]  --> src/parser/declarations/traits.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     AssociatedType, WhereClause, Visibility, Type
[INFO] [stdout]   |     ^^^^^^^^^^^^^^                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GenericParameter`, `Parameter`, and `WhereClause`
[INFO] [stdout]  --> src/parser/declarations/impl_blocks.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 |     Visibility, Type, GenericParameter, WhereClause, Parameter
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::variables::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use self::variables::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::functions::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use self::functions::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::structs::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use self::structs::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::classes::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub use self::classes::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::traits::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub use self::traits::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::enums::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub use self::enums::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::impl_blocks::*`
[INFO] [stdout]   --> src/parser/declarations/mod.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub use self::impl_blocks::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `marker::Sized`
[INFO] [stdout]  --> src/semantic/types/type_system.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::{fmt,marker::Sized};
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet` and `VecDeque`
[INFO] [stdout]  --> src/semantic/types/inference.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::{HashMap, HashSet, VecDeque};
[INFO] [stdout]   |                                 ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ASTNode`, `Declaration`, `Expression`, and `Statement`
[INFO] [stdout]  --> src/semantic/types/inference.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::ast::{Expression, Statement, Declaration, ASTNode};
[INFO] [stdout]   |                          ^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ASTNode`, `Declaration`, and `Statement`
[INFO] [stdout]  --> src/semantic/lifetimes/inference.rs:6:38
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::ast::{Expression, Statement, Declaration, ASTNode};
[INFO] [stdout]   |                                      ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TypeId` and `TypeKind`
[INFO] [stdout]   --> src/semantic/lifetimes/inference.rs:10:43
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::semantic::types::type_system::{TypeId, TypeKind};
[INFO] [stdout]    |                                           ^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ASTNode`, `Declaration`, `Expression`, and `Statement`
[INFO] [stdout]  --> src/semantic/ssa/ssa_form.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::ast::{Expression, Statement, Declaration, ASTNode};
[INFO] [stdout]   |                          ^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BasicBlock`
[INFO] [stdout]  --> src/semantic/ssa/ssa_form.rs:9:56
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::semantic::flow::{ControlFlowGraph, BlockId, BasicBlock};
[INFO] [stdout]   |                                                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ASTNode`
[INFO] [stdout]   --> src/semantic/error_recovery.rs:10:62
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::parser::ast::{Expression, Statement, Declaration, ASTNode};
[INFO] [stdout]    |                                                              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::semantic::types::type_system::TypeId`
[INFO] [stdout]  --> src/semantic/optimizations/constant_folding.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::semantic::types::type_system::TypeId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_bigint::BigInt`
[INFO] [stdout]    --> src/semantic/optimizations/constant_folding.rs:329:25
[INFO] [stdout]     |
[INFO] [stdout] 329 |                     use num_bigint::BigInt;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_bigint::BigInt`
[INFO] [stdout]    --> src/semantic/optimizations/constant_folding.rs:435:13
[INFO] [stdout]     |
[INFO] [stdout] 435 |         use num_bigint::BigInt;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToPrimitive`
[INFO] [stdout]    --> src/semantic/optimizations/constant_folding.rs:436:26
[INFO] [stdout]     |
[INFO] [stdout] 436 |         use num_traits::{ToPrimitive, Zero};
[INFO] [stdout]     |                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/semantic/optimizations/dead_code_elimination.rs:5:33
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BreakStatement`, `ContinueStatement`, and `ReturnStatement`
[INFO] [stdout]  --> src/semantic/optimizations/dead_code_elimination.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 |                          ReturnStatement, BreakStatement, ContinueStatement};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::semantic::symbols::SymbolId`
[INFO] [stdout]   --> src/semantic/optimizations/dead_code_elimination.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::semantic::symbols::SymbolId;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::semantic::symbols::SymbolId`
[INFO] [stdout]  --> src/semantic/optimizations/alias_analysis.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::semantic::symbols::SymbolId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/interpreter/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `label_name`
[INFO] [stdout]    --> src/parser/parser.rs:126:21
[INFO] [stdout]     |
[INFO] [stdout] 126 |         if let Some(label_name) = self.check_for_label()? {
[INFO] [stdout]     |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_label_name`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/parser/declarations/impl_blocks.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |         let mut target_type_str;
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `generic_params`
[INFO] [stdout]    --> src/parser/declarations/impl_blocks.rs:169:13
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let generic_params = if self.check(&[TokenType::OPERATOR(Operators::LESS)]) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_generic_params`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `label_name`
[INFO] [stdout]    --> src/parser/parser.rs:126:21
[INFO] [stdout]     |
[INFO] [stdout] 126 |         if let Some(label_name) = self.check_for_label()? {
[INFO] [stdout]     |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_label_name`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `found`
[INFO] [stdout]   --> src/parser/utils.rs:65:17
[INFO] [stdout]    |
[INFO] [stdout] 65 |             let found = self.current_token()
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_found`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `message`
[INFO] [stdout]    --> src/semantic/semantic_error.rs:150:42
[INFO] [stdout]     |
[INFO] [stdout] 150 |     pub fn new(error: SemanticErrorType, message:String, position: Position) -> Self{
[INFO] [stdout]     |                                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `object_type_id`
[INFO] [stdout]    --> src/semantic/type_checker.rs:621:13
[INFO] [stdout]     |
[INFO] [stdout] 621 |         let object_type_id = self.check_expression(object)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_object_type_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var_type_id`
[INFO] [stdout]    --> src/semantic/type_checker.rs:754:21
[INFO] [stdout]     |
[INFO] [stdout] 754 |                 let var_type_id = self.check_variable_declaration(var_decl)?;
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_var_type_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `func_type_id`
[INFO] [stdout]    --> src/semantic/type_checker.rs:763:21
[INFO] [stdout]     |
[INFO] [stdout] 763 |                 let func_type_id = self.check_function_declaration(func_decl)?;
[INFO] [stdout]     |                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_func_type_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/parser/declarations/impl_blocks.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |         let mut target_type_str;
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `generic_params`
[INFO] [stdout]    --> src/parser/declarations/impl_blocks.rs:169:13
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let generic_params = if self.check(&[TokenType::OPERATOR(Operators::LESS)]) {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_generic_params`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block_scope`
[INFO] [stdout]    --> src/semantic/symbol_table.rs:926:15
[INFO] [stdout]     |
[INFO] [stdout] 926 |           let block_scope = table.enter_scope(ScopeKind::Block);
[INFO] [stdout]     |               ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_block_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block_scope`
[INFO] [stdout]    --> src/semantic/symbol_table.rs:976:15
[INFO] [stdout]     |
[INFO] [stdout] 976 |           let block_scope = table.enter_scope(ScopeKind::Block);
[INFO] [stdout]     |               ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_block_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `module_scope`
[INFO] [stdout]    --> src/semantic/symbol_table.rs:994:15
[INFO] [stdout]     |
[INFO] [stdout] 994 |           let module_scope = table.enter_scope(ScopeKind::Module);
[INFO] [stdout]     |               ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_module_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `function_scope`
[INFO] [stdout]    --> src/semantic/symbol_table.rs:999:15
[INFO] [stdout]     |
[INFO] [stdout] 999 |           let function_scope = table.enter_scope(ScopeKind::Function);
[INFO] [stdout]     |               ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block_scope`
[INFO] [stdout]     --> src/semantic/symbol_table.rs:1004:15
[INFO] [stdout]      |
[INFO] [stdout] 1004 |           let block_scope = table.enter_scope(ScopeKind::Block);
[INFO] [stdout]      |               ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_block_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `found`
[INFO] [stdout]   --> src/parser/utils.rs:65:17
[INFO] [stdout]    |
[INFO] [stdout] 65 |             let found = self.current_token()
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_found`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `message`
[INFO] [stdout]    --> src/semantic/semantic_error.rs:150:42
[INFO] [stdout]     |
[INFO] [stdout] 150 |     pub fn new(error: SemanticErrorType, message:String, position: Position) -> Self{
[INFO] [stdout]     |                                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `object_type`
[INFO] [stdout]    --> src/semantic/types/inference.rs:265:42
[INFO] [stdout]     |
[INFO] [stdout] 265 |                 TypeConstraint::HasField(object_type, field_name, field_type) => {
[INFO] [stdout]     |                                          ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_object_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_name`
[INFO] [stdout]    --> src/semantic/types/inference.rs:265:55
[INFO] [stdout]     |
[INFO] [stdout] 265 |                 TypeConstraint::HasField(object_type, field_name, field_type) => {
[INFO] [stdout]     |                                                       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_type`
[INFO] [stdout]    --> src/semantic/types/inference.rs:265:67
[INFO] [stdout]     |
[INFO] [stdout] 265 |                 TypeConstraint::HasField(object_type, field_name, field_type) => {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `object_type_id`
[INFO] [stdout]    --> src/semantic/type_checker.rs:621:13
[INFO] [stdout]     |
[INFO] [stdout] 621 |         let object_type_id = self.check_expression(object)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_object_type_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var_type_id`
[INFO] [stdout]    --> src/semantic/type_checker.rs:754:21
[INFO] [stdout]     |
[INFO] [stdout] 754 |                 let var_type_id = self.check_variable_declaration(var_decl)?;
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_var_type_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `func_type_id`
[INFO] [stdout]    --> src/semantic/type_checker.rs:763:21
[INFO] [stdout]     |
[INFO] [stdout] 763 |                 let func_type_id = self.check_function_declaration(func_decl)?;
[INFO] [stdout]     |                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_func_type_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `func_decl`
[INFO] [stdout]    --> src/semantic/flow/control_flow_graph.rs:892:35
[INFO] [stdout]     |
[INFO] [stdout] 892 |             Declaration::Function(func_decl) => {
[INFO] [stdout]     |                                   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_func_decl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_id`
[INFO] [stdout]    --> src/semantic/analyser.rs:281:13
[INFO] [stdout]     |
[INFO] [stdout] 281 |         let symbol_id = if let Some(type_id) = type_id {
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `object_type`
[INFO] [stdout]    --> src/semantic/types/inference.rs:265:42
[INFO] [stdout]     |
[INFO] [stdout] 265 |                 TypeConstraint::HasField(object_type, field_name, field_type) => {
[INFO] [stdout]     |                                          ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_object_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_name`
[INFO] [stdout]    --> src/semantic/types/inference.rs:265:55
[INFO] [stdout]     |
[INFO] [stdout] 265 |                 TypeConstraint::HasField(object_type, field_name, field_type) => {
[INFO] [stdout]     |                                                       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_type`
[INFO] [stdout]    --> src/semantic/types/inference.rs:265:67
[INFO] [stdout]     |
[INFO] [stdout] 265 |                 TypeConstraint::HasField(object_type, field_name, field_type) => {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `function_scope_id`
[INFO] [stdout]    --> src/semantic/analyser.rs:489:13
[INFO] [stdout]     |
[INFO] [stdout] 489 |         let function_scope_id = self.symbol_table.enter_scope(crate::semantic::symbols::ScopeKind::Function);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_function_scope_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `borrow_errors`
[INFO] [stdout]    --> src/semantic/analyser.rs:577:20
[INFO] [stdout]     |
[INFO] [stdout] 577 |         if let Err(borrow_errors) = self.symbol_table.borrow_checker.validate_all_borrows() {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_borrow_errors`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/semantic/ssa/ssa_form.rs:210:45
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn from_cfg(cfg: &ControlFlowGraph, context: Rc<RefCell<CompilationContext>>) -> Self {
[INFO] [stdout]     |                                             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/semantic/ssa/ssa_form.rs:353:13
[INFO] [stdout]     |
[INFO] [stdout] 353 |         let mut defined_vars: HashMap<String, HashSet<BlockId>> = HashMap::new();
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block_id`
[INFO] [stdout]    --> src/semantic/ssa/ssa_form.rs:356:14
[INFO] [stdout]     |
[INFO] [stdout] 356 |         for (block_id, block) in &cfg.blocks {
[INFO] [stdout]     |              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_block_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]    --> src/semantic/ssa/ssa_form.rs:356:24
[INFO] [stdout]     |
[INFO] [stdout] 356 |         for (block_id, block) in &cfg.blocks {
[INFO] [stdout]     |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_block`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/semantic/ssa/ssa_form.rs:404:14
[INFO] [stdout]     |
[INFO] [stdout] 404 |         for (i, instruction) in instructions.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dest`
[INFO] [stdout]    --> src/semantic/ssa/ssa_form.rs:405:42
[INFO] [stdout]     |
[INFO] [stdout] 405 |             if let SSAInstruction::Phi { dest, .. } = instruction {
[INFO] [stdout]     |                                          ^^^^ help: try ignoring the field: `dest: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `func_decl`
[INFO] [stdout]    --> src/semantic/flow/control_flow_graph.rs:892:35
[INFO] [stdout]     |
[INFO] [stdout] 892 |             Declaration::Function(func_decl) => {
[INFO] [stdout]     |                                   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_func_decl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/semantic/error_recovery.rs:177:13
[INFO] [stdout]     |
[INFO] [stdout] 177 |             _ => Ok(())
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/semantic/error_recovery.rs:177:13
[INFO] [stdout]     |
[INFO] [stdout] 154 |             SemanticErrorType::TypeError(_) => {
[INFO] [stdout]     |             ------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 173 |             SemanticErrorType::SymbolError(_) => {
[INFO] [stdout]     |             --------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 177 |             _ => Ok(())
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expr`
[INFO] [stdout]    --> src/semantic/error_recovery.rs:247:9
[INFO] [stdout]     |
[INFO] [stdout] 247 |         expr: &Expression,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_id`
[INFO] [stdout]    --> src/semantic/analyser.rs:281:13
[INFO] [stdout]     |
[INFO] [stdout] 281 |         let symbol_id = if let Some(type_id) = type_id {
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `function_scope_id`
[INFO] [stdout]    --> src/semantic/analyser.rs:489:13
[INFO] [stdout]     |
[INFO] [stdout] 489 |         let function_scope_id = self.symbol_table.enter_scope(crate::semantic::symbols::ScopeKind::Function);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_function_scope_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `borrow_errors`
[INFO] [stdout]    --> src/semantic/analyser.rs:577:20
[INFO] [stdout]     |
[INFO] [stdout] 577 |         if let Err(borrow_errors) = self.symbol_table.borrow_checker.validate_all_borrows() {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_borrow_errors`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/semantic/ssa/ssa_form.rs:210:45
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn from_cfg(cfg: &ControlFlowGraph, context: Rc<RefCell<CompilationContext>>) -> Self {
[INFO] [stdout]     |                                             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `borrow`
[INFO] [stdout]    --> src/semantic/optimizations/alias_analysis.rs:192:32
[INFO] [stdout]     |
[INFO] [stdout] 192 |             Expression::Borrow(borrow) => {
[INFO] [stdout]     |                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_borrow`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/semantic/ssa/ssa_form.rs:353:13
[INFO] [stdout]     |
[INFO] [stdout] 353 |         let mut defined_vars: HashMap<String, HashSet<BlockId>> = HashMap::new();
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block_id`
[INFO] [stdout]    --> src/semantic/ssa/ssa_form.rs:356:14
[INFO] [stdout]     |
[INFO] [stdout] 356 |         for (block_id, block) in &cfg.blocks {
[INFO] [stdout]     |              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_block_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]    --> src/semantic/ssa/ssa_form.rs:356:24
[INFO] [stdout]     |
[INFO] [stdout] 356 |         for (block_id, block) in &cfg.blocks {
[INFO] [stdout]     |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_block`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/semantic/ssa/ssa_form.rs:404:14
[INFO] [stdout]     |
[INFO] [stdout] 404 |         for (i, instruction) in instructions.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dest`
[INFO] [stdout]    --> src/semantic/ssa/ssa_form.rs:405:42
[INFO] [stdout]     |
[INFO] [stdout] 405 |             if let SSAInstruction::Phi { dest, .. } = instruction {
[INFO] [stdout]     |                                          ^^^^ help: try ignoring the field: `dest: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/semantic/diagnostics/diagnostic_engine.rs:257:13
[INFO] [stdout]     |
[INFO] [stdout] 257 |             _ => "E0000",
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/semantic/diagnostics/diagnostic_engine.rs:257:13
[INFO] [stdout]     |
[INFO] [stdout] 255 |             TypeError(_) => "E0001",
[INFO] [stdout]     |             ------------ matches some of the same values
[INFO] [stdout] 256 |             SymbolError(_) => "E0002",
[INFO] [stdout]     |             -------------- matches some of the same values
[INFO] [stdout] 257 |             _ => "E0000",
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/semantic/diagnostics/diagnostic_engine.rs:294:13
[INFO] [stdout]     |
[INFO] [stdout] 294 |             _ => {}
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/semantic/diagnostics/diagnostic_engine.rs:294:13
[INFO] [stdout]     |
[INFO] [stdout] 275 |             TypeError(type_error) => {
[INFO] [stdout]     |             --------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 284 |             SymbolError(symbol_error) => {
[INFO] [stdout]     |             ------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 294 |             _ => {}
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/semantic/diagnostics/diagnostic_engine.rs:318:13
[INFO] [stdout]     |
[INFO] [stdout] 318 |             _ => {}
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/semantic/diagnostics/diagnostic_engine.rs:318:13
[INFO] [stdout]     |
[INFO] [stdout] 312 |             TypeError(_) => {
[INFO] [stdout]     |             ------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 315 |             SymbolError(_) => {
[INFO] [stdout]     |             -------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 318 |             _ => {}
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/semantic/error_recovery.rs:177:13
[INFO] [stdout]     |
[INFO] [stdout] 177 |             _ => Ok(())
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/semantic/error_recovery.rs:177:13
[INFO] [stdout]     |
[INFO] [stdout] 154 |             SemanticErrorType::TypeError(_) => {
[INFO] [stdout]     |             ------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 173 |             SemanticErrorType::SymbolError(_) => {
[INFO] [stdout]     |             --------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 177 |             _ => Ok(())
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expr`
[INFO] [stdout]    --> src/semantic/error_recovery.rs:247:9
[INFO] [stdout]     |
[INFO] [stdout] 247 |         expr: &Expression,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `parse_labeled_statement` is never used
[INFO] [stdout]    --> src/parser/parser.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout]  19 | impl Parser {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 125 |     fn parse_labeled_statement(&mut self) -> Result<Option<ASTNode>, ParserError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `infer_variable_declaration` and `infer_function_declaration` are never used
[INFO] [stdout]    --> src/parser/inference.rs:104:8
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl TypeContext {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 104 |     fn infer_variable_declaration(&mut self, decl: &VariableDeclaration)
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     fn infer_function_declaration(&mut self, parameters: &[(String, Type)],
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `advance`, and `move_left` are never used
[INFO] [stdout]   --> src/semantic/semantic_error.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl Position {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 70 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn advance(&mut self, ch:char) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     fn move_left(&mut self){
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `context` is never read
[INFO] [stdout]   --> src/semantic/type_checker.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct TypeChecker {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 14 |     context: Rc<RefCell<CompilationContext>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_error_to_semantic` is never used
[INFO] [stdout]   --> src/semantic/borrow_checker.rs:94:4
[INFO] [stdout]    |
[INFO] [stdout] 94 | fn borrow_error_to_semantic(error: BorrowErrorKind, position: Position) -> SemanticError {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `exit_scope_and_release_borrows` is never used
[INFO] [stdout]    --> src/semantic/borrow_checker.rs:742:8
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl SymbolTable {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 742 |     fn exit_scope_and_release_borrows(&mut self) -> Result<ScopeId, SemanticError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cache_generation` is never read
[INFO] [stdout]   --> src/semantic/symbol_table.rs:19:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct SymbolTable {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 19 |      cache_generation: u32,
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SymbolTable` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `check_unsed_symbols` is never used
[INFO] [stdout]    --> src/semantic/symbol_table.rs:805:9
[INFO] [stdout]     |
[INFO] [stdout] 796 | impl SymbolTable {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 805 |      fn check_unsed_symbols(&self) -> Vec<SymbolId> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `type_constraints` is never read
[INFO] [stdout]    --> src/semantic/types/type_system.rs:295:5
[INFO] [stdout]     |
[INFO] [stdout] 274 | pub struct TypeSystem {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 295 |     type_constraints: Vec<TypeConstraint>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TypeSystem` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `paths_with_return` is never read
[INFO] [stdout]    --> src/semantic/flow/analyser.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub struct ReturnPathAnalyzer {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] 151 |     cfg: ControlFlowGraph,
[INFO] [stdout] 152 |     paths_with_return: HashSet<BlockId>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position` and `errors_count` are never read
[INFO] [stdout]    --> src/semantic/error_recovery.rs:389:5
[INFO] [stdout]     |
[INFO] [stdout] 388 | struct AnalysisCheckpoint {
[INFO] [stdout]     |        ------------------ fields in this struct
[INFO] [stdout] 389 |     position: Position,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 390 |     context_state: Rc<RefCell<CompilationContext>>,
[INFO] [stdout] 391 |     errors_count: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AnalysisCheckpoint` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `context` is never read
[INFO] [stdout]   --> src/semantic/optimizations/constant_folding.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct ConstantFolder {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 53 |     context: Rc<RefCell<CompilationContext>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `context` is never read
[INFO] [stdout]   --> src/semantic/optimizations/dead_code_elimination.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct DeadCodeEliminator {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] 14 |     context: Rc<RefCell<CompilationContext>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `context` is never read
[INFO] [stdout]   --> src/semantic/optimizations/alias_analysis.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct AliasAnalyzer {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 47 |     context: Rc<RefCell<CompilationContext>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `context` is never read
[INFO] [stdout]   --> src/semantic/diagnostics/diagnostic_engine.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct DiagnosticEngine {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 60 |     context: Rc<RefCell<CompilationContext>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `context`, `suggestion_cache`, and `max_edit_distance` are never read
[INFO] [stdout]   --> src/semantic/diagnostics/suggestion_engine.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct SuggestionEngine {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 42 |     context: Rc<RefCell<CompilationContext>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 43 |     /// Cache des suggestions par type d'erreur
[INFO] [stdout] 44 |     suggestion_cache: HashMap<String, Vec<Suggestion>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 45 |     /// Distance de Levenshtein maximale pour les suggestions
[INFO] [stdout] 46 |     max_edit_distance: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `find_similar_types`, `find_similar_symbols`, and `levenshtein_distance` are never used
[INFO] [stdout]    --> src/semantic/diagnostics/suggestion_engine.rs:147:8
[INFO] [stdout]     |
[INFO] [stdout]  49 | impl SuggestionEngine {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 147 |     fn find_similar_types(&self, type_name: &str) -> Vec<(String, usize)> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     fn find_similar_symbols(&self, symbol_name: &str) -> Vec<(String, usize)> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |     fn levenshtein_distance(&self, s1: &str, s2: &str) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `borrow`
[INFO] [stdout]    --> src/semantic/optimizations/alias_analysis.rs:192:32
[INFO] [stdout]     |
[INFO] [stdout] 192 |             Expression::Borrow(borrow) => {
[INFO] [stdout]     |                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_borrow`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/semantic/diagnostics/diagnostic_engine.rs:257:13
[INFO] [stdout]     |
[INFO] [stdout] 257 |             _ => "E0000",
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/semantic/diagnostics/diagnostic_engine.rs:257:13
[INFO] [stdout]     |
[INFO] [stdout] 255 |             TypeError(_) => "E0001",
[INFO] [stdout]     |             ------------ matches some of the same values
[INFO] [stdout] 256 |             SymbolError(_) => "E0002",
[INFO] [stdout]     |             -------------- matches some of the same values
[INFO] [stdout] 257 |             _ => "E0000",
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/semantic/diagnostics/diagnostic_engine.rs:294:13
[INFO] [stdout]     |
[INFO] [stdout] 294 |             _ => {}
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/semantic/diagnostics/diagnostic_engine.rs:294:13
[INFO] [stdout]     |
[INFO] [stdout] 275 |             TypeError(type_error) => {
[INFO] [stdout]     |             --------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 284 |             SymbolError(symbol_error) => {
[INFO] [stdout]     |             ------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 294 |             _ => {}
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/semantic/diagnostics/diagnostic_engine.rs:318:13
[INFO] [stdout]     |
[INFO] [stdout] 318 |             _ => {}
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/semantic/diagnostics/diagnostic_engine.rs:318:13
[INFO] [stdout]     |
[INFO] [stdout] 312 |             TypeError(_) => {
[INFO] [stdout]     |             ------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 315 |             SymbolError(_) => {
[INFO] [stdout]     |             -------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 318 |             _ => {}
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a shared reference to mutable static
[INFO] [stdout]    --> src/semantic/error_recovery.rs:164:46
[INFO] [stdout]     |
[INFO] [stdout] 164 |                         name: format!("T{}", TYPE_VAR_COUNTER),
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `#[deny(static_mut_refs)]` (part of `#[deny(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a shared reference to mutable static
[INFO] [stdout]    --> src/semantic/error_recovery.rs:262:38
[INFO] [stdout]     |
[INFO] [stdout] 262 |                 name: format!("T{}", TYPE_VAR_COUNTER_2),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `parse_labeled_statement` is never used
[INFO] [stdout]    --> src/parser/parser.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout]  19 | impl Parser {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 125 |     fn parse_labeled_statement(&mut self) -> Result<Option<ASTNode>, ParserError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `infer_variable_declaration` and `infer_function_declaration` are never used
[INFO] [stdout]    --> src/parser/inference.rs:104:8
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl TypeContext {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 104 |     fn infer_variable_declaration(&mut self, decl: &VariableDeclaration)
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     fn infer_function_declaration(&mut self, parameters: &[(String, Type)],
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `advance`, and `move_left` are never used
[INFO] [stdout]   --> src/semantic/semantic_error.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl Position {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 70 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn advance(&mut self, ch:char) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     fn move_left(&mut self){
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `context` is never read
[INFO] [stdout]   --> src/semantic/type_checker.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct TypeChecker {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 14 |     context: Rc<RefCell<CompilationContext>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_error_to_semantic` is never used
[INFO] [stdout]   --> src/semantic/borrow_checker.rs:94:4
[INFO] [stdout]    |
[INFO] [stdout] 94 | fn borrow_error_to_semantic(error: BorrowErrorKind, position: Position) -> SemanticError {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `exit_scope_and_release_borrows` is never used
[INFO] [stdout]    --> src/semantic/borrow_checker.rs:742:8
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl SymbolTable {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 742 |     fn exit_scope_and_release_borrows(&mut self) -> Result<ScopeId, SemanticError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cache_generation` is never read
[INFO] [stdout]   --> src/semantic/symbol_table.rs:19:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct SymbolTable {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 19 |      cache_generation: u32,
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SymbolTable` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `check_unsed_symbols` is never used
[INFO] [stdout]    --> src/semantic/symbol_table.rs:805:9
[INFO] [stdout]     |
[INFO] [stdout] 796 | impl SymbolTable {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 805 |      fn check_unsed_symbols(&self) -> Vec<SymbolId> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `type_constraints` is never read
[INFO] [stdout]    --> src/semantic/types/type_system.rs:295:5
[INFO] [stdout]     |
[INFO] [stdout] 274 | pub struct TypeSystem {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 295 |     type_constraints: Vec<TypeConstraint>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TypeSystem` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `paths_with_return` is never read
[INFO] [stdout]    --> src/semantic/flow/analyser.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub struct ReturnPathAnalyzer {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] 151 |     cfg: ControlFlowGraph,
[INFO] [stdout] 152 |     paths_with_return: HashSet<BlockId>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position` and `errors_count` are never read
[INFO] [stdout]    --> src/semantic/error_recovery.rs:389:5
[INFO] [stdout]     |
[INFO] [stdout] 388 | struct AnalysisCheckpoint {
[INFO] [stdout]     |        ------------------ fields in this struct
[INFO] [stdout] 389 |     position: Position,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 390 |     context_state: Rc<RefCell<CompilationContext>>,
[INFO] [stdout] 391 |     errors_count: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AnalysisCheckpoint` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `context` is never read
[INFO] [stdout]   --> src/semantic/optimizations/constant_folding.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct ConstantFolder {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 53 |     context: Rc<RefCell<CompilationContext>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `context` is never read
[INFO] [stdout]   --> src/semantic/optimizations/dead_code_elimination.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct DeadCodeEliminator {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] 14 |     context: Rc<RefCell<CompilationContext>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `context` is never read
[INFO] [stdout]   --> src/semantic/optimizations/alias_analysis.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct AliasAnalyzer {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 47 |     context: Rc<RefCell<CompilationContext>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `context` is never read
[INFO] [stdout]   --> src/semantic/diagnostics/diagnostic_engine.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct DiagnosticEngine {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 60 |     context: Rc<RefCell<CompilationContext>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `context`, `suggestion_cache`, and `max_edit_distance` are never read
[INFO] [stdout]   --> src/semantic/diagnostics/suggestion_engine.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct SuggestionEngine {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 42 |     context: Rc<RefCell<CompilationContext>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 43 |     /// Cache des suggestions par type d'erreur
[INFO] [stdout] 44 |     suggestion_cache: HashMap<String, Vec<Suggestion>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 45 |     /// Distance de Levenshtein maximale pour les suggestions
[INFO] [stdout] 46 |     max_edit_distance: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `find_similar_types`, `find_similar_symbols`, and `levenshtein_distance` are never used
[INFO] [stdout]    --> src/semantic/diagnostics/suggestion_engine.rs:147:8
[INFO] [stdout]     |
[INFO] [stdout]  49 | impl SuggestionEngine {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 147 |     fn find_similar_types(&self, type_name: &str) -> Vec<(String, usize)> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     fn find_similar_symbols(&self, symbol_name: &str) -> Vec<(String, usize)> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |     fn levenshtein_distance(&self, s1: &str, s2: &str) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a shared reference to mutable static
[INFO] [stdout]    --> src/semantic/error_recovery.rs:164:46
[INFO] [stdout]     |
[INFO] [stdout] 164 |                         name: format!("T{}", TYPE_VAR_COUNTER),
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `#[deny(static_mut_refs)]` (part of `#[deny(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a shared reference to mutable static
[INFO] [stdout]    --> src/semantic/error_recovery.rs:262:38
[INFO] [stdout]     |
[INFO] [stdout] 262 |                 name: format!("T{}", TYPE_VAR_COUNTER_2),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `punk` (lib test) due to 2 previous errors; 86 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `punk` (lib) due to 2 previous errors; 80 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "bb49f1181e83f884fcef52e4ed0543bfe84acc4878834df0f53cfcb2f88854ba", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bb49f1181e83f884fcef52e4ed0543bfe84acc4878834df0f53cfcb2f88854ba", kill_on_drop: false }`
[INFO] [stdout] bb49f1181e83f884fcef52e4ed0543bfe84acc4878834df0f53cfcb2f88854ba
